package login;

import java.io.*;
import java.util.Scanner;

public class NumberOfLoginsPlus {
    public static void main(String[] args) throws IOException {
        /**
         * 需求:写一个登录案列
         *
         * 步骤:
         *  将正确的用户名和密码手动保存到本地的文件当中  userinfo.txt    F:\\Java(IJ)\\JavaCase\\src\\login\\userinfo.txt
         *  保存格式:username=zhangsan&word=123&count=0
         *  让用户名键盘录入用户名和密码
         *      比较用户名录入的是否成功
         *          成功提示    登录成功
         *          失败提示    登录失败
         *
         *   注:只能允许输入三次
         */
        BufferedReader br=new BufferedReader(new FileReader("JavaCase\\src\\login\\userinfo.txt"));
        String line=br.readLine();
        br.close();
        //对文档当中的数据进行 & 切割
        String[] split = line.split("&");
        //获取到切割后的数组再次进行切割
        String[] split1 = split[0].split("=");
        String[] split2 = split[1].split("=");
        String[] split3 = split[2].split("=");
        //将切割出来的数据 用户名和密码和次数 进行存储
        String name=split1[1];
        String word=split2[1];
        String count=split3[1];

        int newcount=Integer.parseInt(count);

        //键盘录入部分
        Scanner sc=new Scanner(System.in);
        System.out.println("输入用户名:");
        String newname = sc.nextLine();
        System.out.println("输入密码:");
        String newword = sc.nextLine();

        newcount++;

        //比较部分
        if (newcount<3) {
            if(name.equals(newname)&&word.equals(newword)&&newcount<=3) {
                System.out.println("登录成功");
            }else{
                System.out.println("登陆失败,剩余"+(3-newcount)+"次");
            }
        }else{
            System.out.println("账号已经被锁定!");
        }

        //运行完毕之后将运行次数写入文件，进行下次运行判断
        BufferedWriter bw=new BufferedWriter(new FileWriter("JavaCase\\src\\login\\userinfo.txt"));
        //将次数写入文件
        bw.write("username="+name+"&word="+word+"&count="+newcount);
        //关流
        bw.close();
    }
}
